package com.example.enjoyarkuix.platformview;

import android.content.Context;
import android.net.Uri;
import android.os.Bundle;
import android.view.LayoutInflater;
import android.view.View;
import android.webkit.WebSettings;
import android.webkit.WebView;
import android.webkit.WebViewClient;
import android.widget.MediaController;
import android.widget.VideoView;


import com.example.enjoyarkuix.R;

import ohos.ace.adapter.capability.platformview.IPlatformView;

public class MyMapWrapper implements IPlatformView {

    private String id = "PlatformViewTest1";
    private WebView webview;
    View view;

    MyMapWrapper(Context context, Bundle savedInstanceState) {
        LayoutInflater inflater = LayoutInflater.from(context);
        view = inflater.inflate(R.layout.platform_view, null, false);

        //webview=new WebView(context);
        webview=view.findViewById(R.id.webview);
        
        //initWebSetting();
        webview.requestFocusFromTouch();

        WebSettings webSettings = webview .getSettings();
        webSettings.setJavaScriptEnabled(true);
        webSettings.setDefaultTextEncodingName("utf-8");
        webSettings.setSupportZoom(false);
        webSettings.setBuiltInZoomControls(false);

        webview.loadUrl("https://www.baidu.com");
        init();
    }

    private void init() {

    }



    public void onResume() {
    }

    public void onSaveInstanceState(Bundle outState) {
    }

    @Override
    public View getView() {
        //return webview;
        //return videoview;
        return view;
    }
    @Override
    public  void onDispose() {

    }
    @Override
    public String getPlatformViewID() {
        return id;
    }

    private void initWebSetting(){
        //支持获取手势焦点，输入用户名、密码或其他
        webview.requestFocusFromTouch();
        WebSettings webSettings = webview .getSettings();
        webSettings.setJavaScriptEnabled(true);  //支持js，如果不设置本行，html中的js代码都会失效
        //webSettings.setPluginsEnabled(true);  //支持插件

        webSettings.setRenderPriority(WebSettings.RenderPriority.HIGH);  //提高渲染的优先级
        webSettings.setUseWideViewPort(true);  //将图片调整到适合webview的大小
        webSettings.setLoadWithOverviewMode(true); // 缩放至屏幕的大小

        webSettings.setSupportZoom(true);  //支持缩放，默认为true。是下面那个的前提。
        webSettings.setBuiltInZoomControls(true); //设置可以缩放
        webSettings.setDisplayZoomControls(false); //隐藏原生的缩放控件
        //若上面是false，则该WebView不可缩放，这个不管设置什么都不能缩放。
        webSettings.setTextZoom(2);//设置文本的缩放倍数，默认为 100

        webSettings.setLayoutAlgorithm(WebSettings.LayoutAlgorithm.SINGLE_COLUMN); //支持内容重新布局
        webSettings.supportMultipleWindows();  //多窗口
        webSettings.setCacheMode(WebSettings.LOAD_CACHE_ELSE_NETWORK);  //关闭webview中缓存
        webSettings.setAllowFileAccess(true);  //设置可以访问文件
        webSettings.setNeedInitialFocus(true); //当webview调用requestFocus时为webview设置节点
        webSettings.setJavaScriptCanOpenWindowsAutomatically(true); //支持通过JS打开新窗口，不明白什么意思
        webSettings.setLoadsImagesAutomatically(true);  //支持自动加载图片
        webSettings.setDefaultTextEncodingName("utf-8");//设置编码格式

        webSettings.setStandardFontFamily("");//设置 WebView 的字体，默认字体为 "sans-serif"
        webSettings.setDefaultFontSize(20);//设置 WebView 字体的大小，默认大小为 16
        webSettings.setMinimumFontSize(12);//设置 WebView 支持的最小字体大小，默认为 8
    }
}
